﻿using System.Collections;
using System.Collections.Generic;
using UnityEngine;

namespace TowerDefence
{
    public class GameItemManager : MonoBehaviour
    {
        #region 单例模式

        // 游戏物品管理器的单例实例
        public static GameItemManager instance;

        // 当物体被唤醒时调用的方法
        private void Awake()
        {
            // 检查是否已存在 GameItemManager 实例
            if (instance != null)
            {
                // 如果存在多个实例，输出错误信息并返回
                Debug.LogError("发现多个 GameItemManager 实例！");
                return;
            }

            // 将当前实例设置为单例实例
            instance = this;
        }
        #endregion

        // 静态变量，表示是否激活物品和是否冻结敌人
        public static bool activeItem;
        public static bool freezeEnemies;

        // 启动计时器的初始时间
        public float startTimer = 5;

        // 计时器
        private float timer;

        // 在游戏开始时调用的方法
        private void Start()
        {
            // 初始化计时器
            timer = startTimer;
        }

        // 在每一帧更新时调用的方法
        private void Update()
        {
            // 如果冻结敌人标志为真
            if (freezeEnemies)
            {
                // 减少计时器的时间
                timer -= Time.deltaTime;

                // 如果计时器达到零
                if (timer <= 0)
                {
                    // 重置计时器并取消冻结敌人状态
                    timer = startTimer;
                    freezeEnemies = false;
                }
            }
        }

    }
}
